Illustration strms052.gif shows the basic process for online database upgrade or maintenance with Streams. This illustration shows the following Oracle databases:

- The source database contains the following:

  - The database objects in the database being upgraded or maintained

  - The redo log recording changes to the database objects

- The capture database can be the source database, the destination database, or a third database. The capture database contains the following:

  - A capture process capturing changes from the redo log of the source database. If the capture database and the source database are the same, then a local capture process captures changes in the redo log at the source database. If the capture database is the destination database or a third database, then the source database redo log is shipped to the capture database, and a downstream capture process captures changes in this redo log.

  - The capture process converts the changes to logical change records (LCRs) and enqueues the LCRs into a queue.

  - If the capture database and the destination database are different databases, then a propagation propagates the LCRs to a queue at the destination database. If the capture database and destination database are the same, then the propagation is not needed.

- The destination database contains the following:

  - The queue that contains LCRs that were captured by the capture process.

  - An apply process that applies the LCRs as changes to the database objects.